-- CALC_ART_STATUE_BONUS

-----------------------------------------------
--  计算艺术雕像奖励
-- @param  statue_id  雕像id
-- @param  seed       随即种子
return function(statue_id, seed)
    local m = {};
    local rand1 = bit.band(seed, 0xffff);
    local rand2 = bit.band(bit.blogic_rshift(seed, 16), 0xffff);

    if 1 == statue_id then
        -- 报鹅少年
        local bonus = {};

        table.insert(bonus, { 2, "max_hp", 10 * (5 + rand1 % 6), });

        table.insert(bonus, { 2, "max_mp", 10 * (5 + rand2 % 6), });

        m["bonus"] = bonus;
    elseif 2 == statue_id then
        -- 掷铁饼者
        -- 冈布奥攻击+5~10
        -- 降低所受远程伤害+3~6%

        m["bonus"] = { { 2, "attack", 5 + rand1 % 6, }, };

        m["prop"] = {
            { PropM.getPropId("ranged_damage"), 1, 10 * (3 + rand2 % 4), -1, },
        };
    elseif 3 == statue_id then
        -- 沉思者
        -- 冈布奥魔力+5~10
        -- 所有伤害类魔法效果+5~10%

        m["bonus"] = { { 2, "magic", 5 + rand1 % 6, }, };

        m["prop"] = {
            { 14, "damage", 10 * (5 + rand2 % 6), -1, },
        };
    elseif 4 == statue_id then
        -- 维纳斯
        -- <随机魔法名称>持续轮数+1
        -- 所有辅助类魔法效果+5%~10%

        -- 60%概率：诅咒术、祝福术、静电场     每个20%
        -- 30%概率：瓦解射线、吸能术           每个15%
        -- 10%概率：石肤术、时间停止（限1次）  每个5%
        local list;
        local skill_id;
        rand1 = rand1 % 100;

        if rand1 < 60 then
            list = { 51, 41, 32, };
            skill_id = list[rand2 % sizeof(list) + 1];

            m["prop"] = { { 204, skill_id, 1, -1, }, };
        elseif rand1 < 90 then
            list = { 33, 53, };
            skill_id = list[rand2 % sizeof(list) + 1];

            m["prop"] = { { 204, skill_id, 1, -1, }, };
        else
            -- 石肤术
            list = ({ 1, });

            -- 没有获得过（时间停止+1）
            if CombatStatM.getFieldStat("art_statue_limit") <= 0 then
                -- 时间停止
                table.insert(list, 35);
            end

            skill_id = list[rand2 % sizeof(list) + 1];

            -- 如果是时间停止，需要放在m["limit_prop"]里面，否则放在m["prop"]里面
            if 35 == skill_id then
                m["limit_prop"] = { { 204, skill_id, 1, -1, }, };
            else
                m["prop"] = { { 204, skill_id, 1, -1, }, };
            end
        end

        local rand3 = bit.band(rand1, rand2);
        if type(m["prop"]) == "table" then
            table.insert(m["prop"], { 14, "assist", 10 * (5 + rand3 % 6), -1, } )
        else
            m["prop"] = { { 14, "assist", 10 * (5 + rand3 % 6), -1, }, };
        end

    elseif 5 == statue_id then
        -- 圣母怜子
        -- 冈布奥降低敌人攻击+3~6
        -- 所有恢复类魔法效果+5%~10%

        m["prop"] = {
            { 200, "defense", 3 + rand1 % 4, -1},
            { 14, "cure", 10 * (5 + rand2 % 6), -1, },
        };
    end

    return m;
end
